/*
 * Copyright 2007 National Bioinformatics Network
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package dgbgui.gui.widgets.visual.definition;

import dgbgui.gui.widgets.WidgetFactory;
import dgbgui.gui.widgets.layouts.HorizontalLayout;
import dgbgui.gui.widgets.layouts.VerticalLayout;
import dgbgui.gui.widgets.visual.LabelWidget;
import dgbgui.modeldocument.definition.ClosureDefinition;
import edu.umd.cs.piccolo.PNode;

@SuppressWarnings("serial")
public class ClosureDefinitionWidget extends DefinitionWidget {
    
    public ClosureDefinitionWidget(PNode parent, ClosureDefinition definition) {
        super(parent);
        
        // Create a widget for each boolean node
        VerticalLayout mainLayout = new VerticalLayout(this,5,5);
        
        new LabelWidget(mainLayout,"Closure type: " + ClosureDefinition.closureTypeString(definition.getType()));
        
        HorizontalLayout fromLayout = new HorizontalLayout(mainLayout,0,5);
        new LabelWidget(fromLayout,"From: ");
        WidgetFactory.createWidget(fromLayout,definition.getFromQuery());
        
        HorizontalLayout inLayerLayout = new HorizontalLayout(mainLayout,0,5);
        new LabelWidget(inLayerLayout,"In Layer(s): ");
        WidgetFactory.createWidget(inLayerLayout,definition.getLayerQuery());
        
        HorizontalLayout relationsLayout = new HorizontalLayout(mainLayout,0,5);
        new LabelWidget(relationsLayout,"Following relation(s): ");
        WidgetFactory.createWidget(relationsLayout,definition.getRelationQuery());
        
    }

}
